home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / mac / hypercrd / hc2_x / tcprogud.sit / TC Prog Guide / stack.txt < prev   
Text File  |  1991-02-27  |  7KB  |  205 lines

  1. -- stack: in
  2. -- format: 8 (HyperCard 1)
  3. -- flags: 0x1000 (none)
  4. -- protect password hash: 0
  5. -- maximum user level: 5 (scripting)
  6. -- window: Rect(x1=0, y1=0, x2=0, y2=0)
  7. -- screen: Rect(x1=0, y1=0, x2=0, y2=0)
  8. -- card dimensions: w=0 h=0
  9. -- scroll: x=0 y=0
  10. -- background count: 2
  11. -- first background id: 2698
  12. -- card count: 223
  13. -- first card id: 2878
  14. -- list block id: 7108
  15. -- print block id: 3412
  16. -- font table block id: 0
  17. -- style table block id: 0
  18. -- free block count: 0
  19. -- free size: 0 bytes
  20. -- total size: 284512 bytes
  21. -- stack block size: 5632 bytes
  22. -- created by hypercard version: 0x01208000
  23. -- compacted by hypercard version: 0x01208000
  24. -- modified by hypercard version: 0x01208000
  25. -- opened by hypercard version: 0x01208000
  26. -- patterns[0]: 0x0000000000000000
  27. -- patterns[1]: 0x0000220000002200
  28. -- patterns[2]: 0x8800220088002200
  29. -- patterns[3]: 0xCC003300CC003300
  30. -- patterns[4]: 0xCC883322CC883322
  31. -- patterns[5]: 0xEE88BB22EE88BB22
  32. -- patterns[6]: 0xEECCBB33EECCBB33
  33. -- patterns[7]: 0xFFCCFF33FFCCFF33
  34. -- patterns[8]: 0xFFEEFFBBFFEEFFBB
  35. -- patterns[9]: 0xFFFFFFBBFFFFFFBB
  36. -- patterns[10]: 0x8010022001084004
  37. -- patterns[11]: 0xFFFFFFFFFFFFFFFF
  38. -- patterns[12]: 0x8822882288228822
  39. -- patterns[13]: 0x1122448811224488
  40. -- patterns[14]: 0xC4800C6843023026
  41. -- patterns[15]: 0xB130031BD8C00C8D
  42. -- patterns[16]: 0xAA00AA00AA00AA00
  43. -- patterns[17]: 0x8822552288225522
  44. -- patterns[18]: 0x8855225588552255
  45. -- patterns[19]: 0x77DD77DD77DD77DD
  46. -- patterns[20]: 0x8000000000000000
  47. -- patterns[21]: 0xAA55AA55AA55AA55
  48. -- patterns[22]: 0x038448300C020101
  49. -- patterns[23]: 0x8244394482010101
  50. -- patterns[24]: 0x8814224188412214
  51. -- patterns[25]: 0x8080413E080814E3
  52. -- patterns[26]: 0x22048C7422179810
  53. -- patterns[27]: 0xBE808808EB088880
  54. -- patterns[28]: 0x25C8328964244C92
  55. -- patterns[29]: 0xA29C41BE2AC914EB
  56. -- patterns[30]: 0x40A00000040A0000
  57. -- patterns[31]: 0x8040200002040800
  58. -- patterns[32]: 0xAA00800088008000
  59. -- patterns[33]: 0xFF80808080808080
  60. -- patterns[34]: 0x081C22C180010204
  61. -- patterns[35]: 0xFF808080FF080808
  62. -- patterns[36]: 0xF87422478F172271
  63. -- patterns[37]: 0xBF00BFBFB0B0B0B0
  64. -- patterns[38]: 0xFF7FBE5DA2418000
  65. -- patterns[39]: 0xFAF5FAF5A050A050
  66. -- checksum: 0x0
  67. ----- HyperTalk script -----
  68. -------------------------------------------------------------------
  69. -- Think C Programming Guide v.1.0.
  70. -- February 27, 1991
  71. -- Please send $20 shareware fee to:
  72. -- Ralph Gonzalez, PO Box 54, Newark, DE 19711, USA
  73. -------------------------------------------------------------------
  74. -- This stack was created with Bookbinder 1.0.1, which aids in
  75. -- the creation of HyperCard documents. Bookbinder is $10 shareware
  76. -- by Ralph Gonzalez, PO Box 54, Newark, DE 19711.  Sept 20, 1990.
  77. -------------------------------------------------------------------
  78. -- Changes to the scripts involved: (1) removing references to an
  79. -- "index" card in arrowkey handler ("page" script"); (2) removing
  80. -- the need to update page numbers when "notes" pages are added (on
  81. -- newCard and on doMenu handlers of the stack script); (3) adding
  82. -- UpdateNotesPg handler (notes card script); (4) changing the
  83. -- onMouseUp handler in the Add Notes Pg button.  Also, for HC 2.0
  84. -- compatibility I had to lengthen the bookmark page no. fields by
  85. -- about 4 pixels.
  86. -------------------------------------------------------------------
  87.  
  88. on openStack
  89.   show menuBar
  90.   global stackJustPrinted
  91.   put false into stackJustPrinted
  92.   global gettingHelp
  93.   put false into gettingHelp
  94.   global xrefdepth
  95.   put 0 into xrefdepth
  96.   global showButton
  97.   put false into showButton
  98.   global cardJustPasted
  99.   put false into cardJustPasted
  100.   global cardJustDeleted
  101.   put false into cardJustDeleted
  102.   global deletedCard
  103.   put card field "deletedCard" of card "contents" into deletedCard
  104.   global bookmark1
  105.   global bookmark2
  106.   put card field "bookmark1" of card "contents" into bookmark1
  107.   put card field "bookmark2" of card "contents" into bookmark2
  108.   pass openStack
  109. end openStack
  110.  
  111. on help
  112.   put id of this card into card field "return card" of card "help"
  113.   visual iris open
  114.   go card "help"
  115. end help
  116.  
  117. on newCard
  118.   if the name of this card is not the name of card "notes" then
  119.     show background button "Update Page Nos" of card "contents"
  120.   end if
  121.   pass newCard
  122. end newCard
  123.  
  124. on doMenu choice
  125.   global showButton
  126.   global cardJustDeleted
  127.   global deletedCard
  128.   global cardJustPasted
  129.   global stackJustPrinted
  130.   if choice is "Print Stack..." then
  131.     push card
  132.     go card "contents"
  133.     show field "footnote1"
  134.     show field "footnote2"
  135.     put true into stackJustPrinted
  136.     pass doMenu
  137.   end if
  138.   if choice is "Paste Card" and the name of this card is not the name of card "notes" then
  139.     put true into showButton
  140.     -- can't show button immediately or the pasted card will have
  141.     -- a different background
  142.     put true into cardJustPasted
  143.   end if
  144.   if choice is "Undo" and the name of this card is not the name of card "notes" then
  145.     put true into cardJustPasted
  146.     -- in case you use "Undo" to paste a card
  147.   end if
  148.   if (choice is "Cut Card" or choice is "Delete Card") then
  149.     show background button "Update Page Nos" of card "contents"
  150.     -- show button before cut in case paste follows, to prevent
  151.     -- change in background before paste
  152.     set lockScreen to true
  153.     push card
  154.     go card "contents"
  155.     get the id of this background
  156.     pop card
  157.     set lockScreen to false
  158.     if it is the id of this background then
  159.       -- i.e. deleting a true "page" card
  160.       if deletedCard is not "" then
  161.         answer "Please update page numbers first" with "OK"
  162.       else
  163.         put the id of this card into deletedCard
  164.         put true into cardJustDeleted
  165.         pass doMenu
  166.       end if
  167.     else
  168.       put true into cardJustDeleted
  169.       pass doMenu
  170.     end if
  171.   else
  172.     pass doMenu
  173.   end if
  174. end doMenu
  175.  
  176. on idle
  177.   global showButton
  178.   global cardJustPasted
  179.   if cardJustPasted then
  180.     put false into cardJustPasted
  181.     -- if pasted card has "page" background, see idle handler for "page"
  182.   end if
  183.   if showButton then
  184.     put false into showButton
  185.     show background button "Update Page Nos" of card "contents"
  186.   end if
  187.   pass idle
  188. end idle
  189.  
  190. on closeStack
  191.   global deletedCard
  192.   put deletedCard into card field "deletedCard" of card "contents"
  193.   global bookmark1
  194.   global bookmark2
  195.   put bookmark1 into card field "bookmark1" of card "contents"
  196.   put bookmark2 into card field "bookmark2" of card "contents"
  197.   pass closeStack
  198. end closeStack
  199.  
  200. function idToNumber theID
  201. return the number of card id theID
  202. end idToNumber
  203.  
  204.  
  205.